package maquinaestados;

import entidades.TelhaBase;
import sistema.Sistema;

/**
 * Trabalho DAS - 2014/2015
 * @author a21210380, a21190325, a21210392
 */
public class EstadoNormal extends Estado {

    @Override
    public Estado drag(float x, float y, boolean fim) {
        return this;
    }

    @Override
    public Estado click(float x, float y, boolean ctr) {
        TelhaBase telha = Sistema.getInstance().getTelha(x, y);
        if(telha != null) {
            if(ctr) {
                return new EstadoAdicionarAncora(telha);
            }
            if(telha.getRectangulo().efetuaResize(x, y)) {
                return new EstadoResize(telha);
            } else {
                return new EstadoMover(telha);
            }
        }
        return this;
    }

    @Override
    public String toString() {
        return "normal";
    }
    
    @Override
    public void accept(IEstadoVisitante visitor) {
        visitor.visitante(this);
    }
}
